Texture synthesis refers to an operation where image components, such as water, grass, trees, clouds, sand, etc., that are not present in an original image material, are filled artificially or synthesized, on the basis of known textures, such as from the image original material itself. In video coding, for example, taking into account these textures in the coding means a large data rate effort, as textures are usually rich in detail and are therefore laborious to code. Therefore, one sometimes abstains from performing an exact reconstruction of such textures, or this part is even exempt from the coding. Finding such texture areas that do not need exact reconstruction is referred to as texture analysis. On the decoder side, the respective omitted texture area may then be synthesized by texture synthesis, as discussed above. A texture synthesis, however, may be employed not only for reducing the data rate in the transmission of video data. Rather, texture synthesis is applicable also as a means for image/video restoration.
One goal of texture synthesis should be to fill the area to be synthesized such that the synthesization is unnoticeable for the viewer. A synthesized texture should therefore have properties that are as similar as possible to the image area adjacent to this area to be synthesized. Furthermore, the transitions should be as unnoticeable as possible for the viewer.